package com.th.supcom.pds.impl.manager.impl;

import java.util.List;
import java.util.Map;

import net.carefx.fc.framework.db.manager.GetSequenceHelper;

import org.apache.ibatis.session.RowBounds;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

import com.th.supcom.pds.domain.pojo.OrderexecVsDispense;
import com.th.supcom.pds.impl.dao.OrderexecVsDispenseMapper;
import com.th.supcom.pds.impl.manager.OrderexecVsDispenseManager;

/**
 * OrderexecVsDispense 管理接口实现.
 * 
 * 医嘱执行与摆药记录对应关系.
 */
public class OrderexecVsDispenseManagerImpl implements OrderexecVsDispenseManager
{
    public static final String TAB_PDS_ORDEREXEC_VS_DISPENSE = "PDS_ORDEREXEC_VS_DISPENSE";

    private OrderexecVsDispenseMapper m_pdsOrderexecVsDispenseMapper;

    /** 序列生成器. */
    private GetSequenceHelper m_getSequenceHelper;

    /**
     * 默认的构造函数.
     */
    public OrderexecVsDispenseManagerImpl ()
    {

    }

    /**
     * 获取OrderexecVsDispenseMapper.
     * 
     * @return OrderexecVsDispenseMapper.
     */
    public OrderexecVsDispenseMapper getOrderexecVsDispenseMapper ()
    {
        return m_pdsOrderexecVsDispenseMapper;
    }

    /**
     * 注入OrderexecVsDispenseMapper.
     * 
     * @param pdsOrderexecVsDispenseMapper set pdsOrderexecVsDispenseMapper.
     */
    public void setOrderexecVsDispenseMapper (OrderexecVsDispenseMapper pdsOrderexecVsDispenseMapper)
    {
        m_pdsOrderexecVsDispenseMapper = pdsOrderexecVsDispenseMapper;
    }

    /**
     * 获取序列.
     * 
     * @return GetSequenceHelper
     */
    public GetSequenceHelper getGetSequenceHelper ()
    {
        return m_getSequenceHelper;
    }

    /**
     * 注入序列.
     * 
     * @param getSequenceHelper getSequenceHelper.
     */
    public void setGetSequenceHelper (GetSequenceHelper getSequenceHelper)
    {
        m_getSequenceHelper = getSequenceHelper;
    }

    @Override
    public OrderexecVsDispense getOrderexecVsDispenseByID (Long id)
    {
        return m_pdsOrderexecVsDispenseMapper.getOrderexecVsDispenseByID (id);
    }

    @Override
    public Long getOrderexecVsDispenseSeq ()
    {
        return m_getSequenceHelper.getNextSequenceId (TAB_PDS_ORDEREXEC_VS_DISPENSE);
    }

    @Override
    public List <OrderexecVsDispense> findOrderexecVsDispenseListByExample (OrderexecVsDispense pdsOrderexecVsDispense)
    {
        return m_pdsOrderexecVsDispenseMapper.findOrderexecVsDispenseListByExample (pdsOrderexecVsDispense);
    }

    @Override
    public int findOrderexecVsDispenseCountByExample (OrderexecVsDispense pdsOrderexecVsDispense)
    {
        return m_pdsOrderexecVsDispenseMapper.findOrderexecVsDispenseCountByExample (pdsOrderexecVsDispense);
    }

    @Override
    public List <OrderexecVsDispense> findOrderexecVsDispenseListByMap (Map <String, Object> params)
    {
        return m_pdsOrderexecVsDispenseMapper.findOrderexecVsDispenseListByMap (params);
    }

    @Override
    public List <OrderexecVsDispense> findOrderexecVsDispensePagingByMap (Map <String, Object> params, Integer offset, Integer limit)
    {
        return m_pdsOrderexecVsDispenseMapper.findOrderexecVsDispensePagingByMap (new RowBounds (offset, limit), params);
    }

    @Override
    public Integer findOrderexecVsDispenseCountByMap (Map <String, Object> params)
    {
        return m_pdsOrderexecVsDispenseMapper.findOrderexecVsDispenseCountByMap (params);
    }

    @Override
    public int modifyOrderexecVsDispense (OrderexecVsDispense pdsOrderexecVsDispense)
    {
        return m_pdsOrderexecVsDispenseMapper.modifyOrderexecVsDispense (pdsOrderexecVsDispense);
    }

    @Override
    public int modifyOrderexecVsDispenseByExample (OrderexecVsDispense pdsOrderexecVsDispense)
    {
        return m_pdsOrderexecVsDispenseMapper.modifyOrderexecVsDispenseByExample (pdsOrderexecVsDispense);
    }

    @Override
    public int removeOrderexecVsDispenseByID (Long id)
    {
        return m_pdsOrderexecVsDispenseMapper.removeOrderexecVsDispenseByID (id);
    }

    @Override
    public int removeOrderexecVsDispenseByMap (Map <String, Object> params)
    {
        return m_pdsOrderexecVsDispenseMapper.removeOrderexecVsDispenseByMap (params);
    }

    @Override
    public void addOrderexecVsDispense (OrderexecVsDispense pdsOrderexecVsDispense)
    {
        pdsOrderexecVsDispense.setId (getOrderexecVsDispenseSeq ());
        m_pdsOrderexecVsDispenseMapper.addOrderexecVsDispense (pdsOrderexecVsDispense);
    }

    /** 日志记录器. */
    public static final Logger s_logger = LoggerFactory.getLogger (OrderexecVsDispenseManagerImpl.class);

    /** 公司版权信息. */
    public static final String copyright = "Copyright 2014, TH Supcom Corporation";

    /** 提交路径. */
    public static final String SCC_BRANCH = "$URL$";

    /** 提交日期. */
    public static final String SCC_LAST_MODIFICATION_DATE = "$Date$";

    /** 最终修改人员. */
    public static final String SCC_LAST_MODIFIER_NAME = "$Author$";

    /** 最终版本号. */
    public static final String SCC_REVISION = "$Revision$";
}